Welcome![Sign In][Sign Up]
Location:
Search - delphi 16

Search list

[Other resourcedelphi 编程实例与技巧

Description: Delphi是由Inprise公司推出的面向对象的可视化软件开发工具。本书共分三部分、16章,主要介绍Delphi 集成开发环境,对象Pascal语言、组件、通用编程技术、动态链接库、多线程、多媒体编程、数据库编程、网络编程和Windows API编程等。 -Inprise Delphi is the company's object-oriented visualization software development tools. The book has three parts, 16 chapters, introduces Delphi Integrated Development Environment, Object Pascal language, components, common programming techniques, dynamic link library, multi-threaded, multi-media programming, database programming, network programming and other Windows API programming.
Platform: | Size: 12046210 | Author: 白宇 | Hits:

[Other汉字库

Description: 16点阵汉字库程序(Delphi)-16 (Delphi)
Platform: | Size: 263394 | Author: 123 | Hits:

[Windows Develop16

Description: 基于ipx协议的delphi控件演示程序-A delphi ActivX demo program based on ipx protocol.
Platform: | Size: 134574 | Author: zxl | Hits:

[Other resourcePASCAL示例(核心-5-16)

Description: 这一系列是我平时收集的pascal深入核心变成,希望对大家有帮助,开发环境是delphi-this series is my usual collection of pascal-depth into the core, we hope to help the development environment is delphi
Platform: | Size: 135739 | Author: aa | Hits:

[Windows Develop串口调试(delphi源码)

Description:

使用说明
本程序完全参照龚建伟《串口调试助手V2.2》制作而成,原软件是用VC编写的,我将它改用Delphi编写,作为我学习串口编程的一个例子与工具使用。

其中用到串口控件为ComPort,该控件为开源软件,各大网站均有下载,目前最新版为3.0。


使用平台: WIN9X/NT/2000/XP

本软件目前仅供三线制(NONMODEM)串口调试之用,所有功能均置于界面上,一目了然,其义自明,这里仅对十六进制发送作一说明:

十六进制发送:选中(CHECK)十六进制发送后,程序会自动从发送框取16进制数发送,最好按16进制格式填写,例如:12 34 56 77 10

使用窗口悬浮功能:点击程序左下角的针状按钮可以使程序置于最上层,保持可见;

放大至全屏:当需要扩大接收窗口以方便观看数据时,可以点击右上角最大化按钮

另外:还要注意的是调试串口时,插拨串口接头应尽量关闭计算机,至少保证一端是关闭的。


=================================================

这个程序是我在网上下载的,在使用中发现有些问题:

1、编译后发现在自动发送时有假死机现像,已经修正;


2、把按键改在右边了,方便操作。


QQ:705254188    cybers@163.com


                                             Cyber Wang
                                              2008-7-24

 


Platform: | Size: 247537 | Author: cybers | Hits:

[Delphi/CppBuilderDELPHI编程实例与技巧

Description: Delphi是由Inprise公司推出的面向对象的可视化软件开发工具。Delphi 5是Delphi的最新版本。本书共分三部分、16章,主要介绍Delphi 5集成开发环境,对象Pascal语言、组件、通用编程技术、动态链接库、多线程、多媒体编程、数据库编程、网络编程和Windows API编程等。
Platform: | Size: 12356852 | Author: uz520@qq.com | Hits:

[Com Port串口调试delphi源码

Description: 本软件目前仅供三线制(NONMODEM)串口调试之用,所有功能均置于界面上,一目了然,其义自明,这里仅对十六进制发送作一说明: 十六进制发送:选中(CHECK)十六进制发送后,程序会自动从发送框取16进制数发送,最好按16进制格式填写,例如:12 34 56 77 10 使用窗口悬浮功能:点击程序左下角的针状按钮可以使程序置于最上层,保持可见; 放大至全屏:当需要扩大接收窗口以方便观看数据时,可以点击右上角最大化按钮 另外:还要注意的是调试串口时,插拨串口接头应尽量关闭计算机,至少保证一端是关闭的。
Platform: | Size: 313391 | Author: myledy@163.com | Hits:

[BooksDelphi程序开发范例宝典

Description: 第1章 窗体与界面设计   1.1 菜单应用    实例001 在系统菜单中添加菜单项    实例002 带历史信息的菜单    实例003 菜单动态合并    实例004 像“开始”菜单一样漂亮的菜单    实例005 多彩的菜单    实例006 可以拉伸的菜单界面   1.2 工具栏设计    实例007 带背景的工具栏    实例008 浮动工具栏   1.3 状态栏设计    实例009 在状态栏中显示检查框    实例010 带进度条的状态栏    实例011 状态栏中加入图标   1.4 导航菜单界面    实例012 OutLook界面    实例013 带导航菜单的主界面    实例014 图形化的导航界面  1.5 特色程序界面    实例015 类QQ的程序界面   实例016 类似Windows XP的程序界面    实例017 以图形按钮显示的界面    实例018 以树型显示的程序界面    实例019 以XPManifest组件显示界面    实例020 动态按钮的窗体界面   1.6 特殊形状的窗体    实例021 非矩形窗体    实例022 建立字体形状窗体   1.7 多媒体光盘    实例023 自动启动的多媒体光盘程序    实例024 为触摸屏程序添加虚拟键盘    实例025 触摸屏系统   1.8 窗体效果    实例026 半透明渐显窗体    实例027 窗口颜色的渐变    实例028 带背景的窗体    实例029 为窗体增加边框  1.9 窗体动画    实例030 窗体中的滚动字幕    实例031 动画显示窗体    实例032 制作闪烁的窗体    实例033 直接在窗体上绘图    实例034 动画形式的程序界面    实例035 以时钟显示界面窗体   1.10 标题栏窗体    实例036 标题栏上的按钮    实例037 使窗体标题栏文字右对齐    实例038 没有标题栏但可以改变大小的窗口   1.11 设置窗体位置    实例039 不可移动的窗体    实例040 设置窗体在屏幕中的位置    实例041 始终在最上面的窗体   1.12 设置窗体大小    实例042 限制窗体大小    实例043 获取桌面大小    实例044 组件大小随窗体的改变而改变    实例045 在窗口间移动按扭    实例046 如何实现Office助手   1.13 窗体控制技术    实例047 在关闭窗口前加入确认对话框    实例048 程序在循环中响应界面操作    实例049 使用任意组件拖动窗体    实例050 动态创建窗体和释放窗体    实例051 修改提示字体及颜色   1.14 其他技术    实例052 实现标签式的多页面窗体    实例053 给MDI窗体加背景    实例054 如何关闭MDI类型窗体中的子窗体    实例055 利用组件模板实现窗体资源的重复利用  第2章 控件应用 第3章 图形技术 第4章 多媒体技术  第5章 文件系统  第6章 操作系统与Windows相关程序  第7章 注册表  第8章 数据库技术  第9章 SQL技术  第10章 报表与打印技术 第11章 图表技术  第12章 硬件相关开发技术 第13章 网络开发技术 第14章 Web编程  第15章 加密、安全与软件注册 第16章 数据结构与算法 第17章 Delphi语言基础  第18章 实用工具  第19章 程序打包  技术要点对应实例位置
Platform: | Size: 85263181 | Author: tianyigirl19830803@163.com | Hits:

[Delphi/CppBuilderDelphi_程序设计基础教程

Description: 目 录 第 1 章 Delphi 集成开发环境 ..................... 1 2.2.4 指针类型................................... 30 2.2.5 过程与函数类型....................... 31 1.1 Delphi 主窗口 ........................................ 2 1.1.1 标题栏 ........................................ 2 1.1.2 菜单栏 ........................................ 2 1.1.3 工具栏 ........................................ 3 1.1.4 组件板 ........................................ 3 1.2 Delphi 窗体窗口..................................... 3 1.2.1 窗体窗口 .................................... 3 1.2.2 窗体文件 .................................... 4 1.3 代码编辑窗口 ........................................ 4 1.4 对象查看器窗口 .................................... 4 1.4.1 对象查看器窗口的组成............. 5 1.4.2 设置属性 .................................... 5 1.4.3 添加事件 .................................... 6 1.5 项目管理器 ............................................ 6 1.5.1 项目组成 .................................... 7 1.5.2 项目管理器 ................................ 9 1.5.3 项目管理 .................................. 10 1.5.4 项目编译和运行....................... 12 1.6 Delphi 程序设计过程........................... 14 1.7 实验 ...................................................... 17 习题 ............................................................... 19 2.2.6 可变类型................................... 31 2.3 常量和变量的定义............................... 32 2.3.1 常量........................................... 32 2.3.2 变量........................................... 32 2.4 运算符和表达式................................... 33 2.4.1 算术运算符............................... 34 2.4.2 逻辑运算符............................... 34 2.4.3 关系运算符............................... 34 2.4.4 位运算符................................... 35 2.4.5 指针运算符............................... 35 2.4.6 集合运算符............................... 35 2.5 语句 ...................................................... 36 2.5.1 简单语句................................... 36 2.5.2 条件语句................................... 36 2.5.3 循环语句................................... 38 2.6 过程与函数........................................... 40 2.6.1 过程和函数的声明................... 40 2.6.2 过程和函数的参数................... 40 2.6.3 过程和函数的调用................... 42 2.7 实验 ...................................................... 43 2.7.1 编写对象 Pascal 应用程序....... 43 第 2 章 Delphi 的编程语言........................ 21 2.7.2 函数和过程的编写和调用 ....... 44 2.1 保留字和标识符 .................................. 21 习题 ............................................................... 46 2.1.1 保留字和标准指令符............... 21 第 3 章 Delphi 窗体与组件........................ 47 2.1.2 标识符 ...................................... 22 2.1.3 注释 .......................................... 22 2.1.4 控制台程序中的屏幕输入 3.1 Delphi 窗体........................................... 47 3.1.1 窗体与窗口............................... 47 和输出 ...................................... 22 3.1.2 窗体属性................................... 47 3.1.3 窗体事件................................... 48 2.2 Object Pascal 的数据类型.................... 23 2.2.1 简单数据类型........................... 24 2.2.2 字符串类型 .............................. 28 2.2.3 结构类型 .................................. 29 3.2 设计窗体 .............................................. 48 3.2.1 新建窗体................................... 48 3.2.2 设置窗体属性........................... 49 3.2.3 添加组件 .................................. 49 3.2.4 编辑组件 .................................. 49 3.2.5 设置组件属性........................... 49 3.2.6 保存文件 .................................. 49 3.3 文本型组件 .......................................... 50 3.3.1 Label 组件 ................................ 50 3.3.2 Static Text 组件 ........................ 51 3.3.3 Tab 组件 ................................... 52 3.4 按钮型组件 .......................................... 52 3.4.1 Button 组件............................... 52 3.4.2 BitBtn 组件............................... 53 3.4.3 RadioButton 组件 ..................... 54 3.4.4 CheckBox 组件......................... 54 3.5 编辑型组件 .......................................... 54 3.5.1 Edit 组件................................... 54 3.5.2 MaskEdit 组件.......................... 56 3.5.3 Memo 组件 ............................... 57 3.5.4 RichEdit 组件 ........................... 58 3.6 列表框型组件 ...................................... 60 3.6.1 ListBox 组件............................. 60 3.6.2 CheckBox 组件......................... 62 3.6.3 ComboBox 组件 ....................... 62 3.7 滑块型组件 .......................................... 63 3.7.1 Scrollbar 组件........................... 63 3.7.2 TrackBar 组件 .......................... 64 3.8 容器型组件 .......................................... 64 3.8.1 GroupBox 组件......................... 64 3.8.2 Panel 组件................................. 65 3.8.3 ScrollBox 组件 ......................... 66 3.9 MDI 程序 ............................................. 66 3.9.1 MDI 窗体及其属性.................. 66 3.9.2 利用模板创建 MDI 应用 程序 .......................................... 67 3.10 实验 .................................................... 68 3.10.1 设计由按钮类组件实现 的功能窗体............................. 68 3.10.2 设计由列表类组件实现的 功能窗体 ................................ 70 3.10.3 按需求将各种组件灵活组合, 实现功能窗体......................... 73 习题 ............................................................... 74 第 4 章 菜单设计............................................ 76 4.1 菜单设计简介....................................... 76 4.1.1 菜单结构................................... 76 4.1.2 菜单命令项的作用................... 76 4.1.3 菜单设计器............................... 77 4.2 主菜单设计........................................... 77 4.2.1 打开主菜单设计器................... 78 4.2.2 添加菜单命令项....................... 78 4.2.3 菜单命令项分组....................... 79 4.2.4 菜单命令项热键....................... 79 4.2.5 调整菜单命令项....................... 79 4.2.6 创建级联菜单........................... 80 4.3 菜单命令响应....................................... 80 4.4 运行时设置菜单................................... 82 4.4.1 菜单命令灰显........................... 83 4.4.2 隐藏菜单命令........................... 83 4.4.3 改变菜单命令文本................... 84 4.4.4 菜单命令单选标记................... 84 4.4.5 菜单命令复选标记................... 84 4.5 创建动态菜单....................................... 85 4.6 图形菜单 .............................................. 88 4.7 快捷菜单设计....................................... 89 4.7.1 快捷菜单的设计....................... 89 4.7.2 快捷菜单的响应....................... 90 4.8 实验 ...................................................... 91 习题 ............................................................... 93 第 5 章 对话框、工具栏和状态栏设计 .... 95 5.1 对话框设计........................................... 95 5.1.1 文件对话框组件....................... 95 5.1.2 字体对话框组件....................... 97 5.1.3 颜色对话框组件....................... 98 5.1.4 打印、打印设置和页面设置 对话框组件............................... 98 5.1.5 查找和替换对话框组件........... 99 5.1.6 消息框和输入框..................... 100 5.1.7 对话框综合应用实例..............102 7.3.1 异常响应与 try…except 5.2 工具栏设计 .........................................107 语句......................................... 155 5.2.1 用面板构成工具栏..................107 7.3.2 异常保护与 try…finally 5.2.2 使用工具栏组件......................112 语句......................................... 157 5.2.3 使用 TCoolBar 组件................113 7.3.3 异常的重引发和处理嵌套 ..... 159 5.2.4 使用 TControlBar 组件 ...........115 7.3.4 定义自己的异常..................... 159 5.3 状态栏设计 .........................................115 7.3.5 利用异常响应编程................. 163 5.4 实验 .....................................................118 7.4 Delphi 调试器..................................... 165 习题 ..............................................................121 7.4.1 准备调试................................. 165 第 6 章 Delphi 多媒体应用.......................123 7.4.2 设置调试器的选项................. 165 7.5 控制程序的运行................................. 166 6.1 绘图组件 .............................................123 7.5.1 单步执行................................. 166 6.1.1 TShape 组件 ............................123 7.5.2 跟踪执行................................. 167 6.1.2 画布对象 .................................124 7.5.3 跳过一段代码......................... 168 6.1.3 TPaintBox 组件 .......................124 7.5.4 全速执行剩余的代码............. 168 6.1.4 TImage 组件 ............................124 7.5.5 返回到执行点......................... 168 6.2 图形列表组件 .....................................130 7.5.6 暂停运行................................. 168 6.2.1 TTreeView 组件 ......................130 7.5.7 重新开始运行......................... 168 6.2.2 TListView 组件 .......................131 7.5.8 命令行参数............................. 169 6.3 图形栅格组件 .....................................132 7.6 断点 .................................................... 169 6.3.1 TStringGrid 组件 .....................133 7.6.1 源代码断点............................. 169 6.3.2 TDrawGrid 组件......................134 7.6.2 机器指令断点......................... 170 6.3.3 TColorGrid 组件......................136 7.6.3 数据断点................................. 171 6.4 图形日历组件 .....................................136 7.6.4 模块断点................................. 171 6.4.1 TDateTimePicker 组件 ............137 7.6.5 指定遇到断点时的行为......... 171 6.4.2 TCalendar 组件........................137 7.6.6 断点列表窗口......................... 172 6.5 多媒体组件 .........................................137 7.6.7 删除断点................................. 173 6.5.1 TMediaPlayer 组件..................137 7.6.8 设置断点的属性..................... 173 6.5.2 多媒体播放器..........................138 7.6.9 禁止和允许断点..................... 173 6.5.3 Flash 播放器............................141 7.7 监视表达式的值................................. 174 6.6 实验 .....................................................144 7.7.1 观察窗口................................. 174 习题 ..............................................................148 7.7.2 计算和修改表达式的值......... 175 第 7 章 Delphi 异常处理与调试..............150 7.1 Delphi 异常处理..................................150 7.1.1 异常处理的意义......................150 7.1.2 错误类型 .................................151 7.2 Delphi 异常类 .....................................153 7.3 Delphi 异常处理机制..........................155 7.7.3 计算提示................................. 176 7.7.4 Inspector 窗口......................... 176 7.7.5 查看局部变量的值................. 177 7.8 实验 .................................................... 177 7.8.1 Delphi 异常处理机制 ............. 177 7.8.2 Delphi 调试............................. 178 习题 ............................................................. 180 第 8 章 数据库编程......................................183 8.1 数据库系统概述 .................................183 8.1.1 数据库管理系统......................183 8.1.2 关系数据库 .............................184 8.1.3 数据库应用程序......................184 8.1.4 Delphi 数据库的体系结构......184 8.2 BDE 组件 ............................................188 8.2.1 TTable 组件介绍 .....................189 8.2.2 TQuery 组件介绍 ....................199 8.3 ADO 组件............................................206 8.3.1 TADOConnection 组件 ...........208 8.3.2 TADOCommand 组件.............210 8.3.3 TADODataSet 组件.................212 8.3.4 TADOTable 组件 ....................213 8.4 数据控制组件简介 .............................214 8.4.1 TDBGrid 组件介绍 .................215 8.4.2 TDBNavigator 组件介绍.........217 8.4.3 TDBText 组件介绍 .................219 8.4.4 TDBEdit 组件介绍..................219 9.1.1 QuickReport 概述 .................. 244 9.1.2 TQuickRep 组件 .................... 245 9.1.3 TQRSubDetail 组件................ 247 9.1.4 TQRBand 组件 ....................... 248 9.1.5 TQRChildBand 组件............... 249 9.1.6 TQRGroup 组件...................... 250 9.1.7 TQRLabel 组件....................... 250 9.1.8 TQRDBText 组件................... 250 9.1.9 TQRExpr 组件........................ 250 9.1.10 TQRsysData 组件 ................. 251 9.1.11 TQRMemo 组件 ................... 252 9.1.12 TQRRichText 组件............... 252 9.1.13 TQRDBRichText 组件.......... 252 9.1.14 TQRShape 组件 .................... 252 9.1.15 TQRImage 组件.................... 252 9.1.16 TQRDBImage 组件 .............. 252 9.1.17 TQRComposite 组件............. 252 9.1.18 TQRPreview 组件................. 253 9.2 QuickReport 报表实例 ....................... 253 8.4.5 TDBMemo 组件介绍 ..............220 9.2.1 打印单数据库报表................. 253 8.4.6 TDBImage 组件介绍...............221 9.2.2 打印标签、信封..................... 256 8.4.7 TDBListBox 组件介绍............221 9.2.3 打印主/明细表........................ 258 8.4.8 TDBComboBox 组件介绍 ......221 9.2.4 打印分组与统计报表............. 260 8.4.9 TDBCheckBox 组件介绍........222 9.3 Rave 报表设计器的组件.................... 262 8.4.10 TDBRadioGroup 组件介绍 ...222 9.3.1 Rave 5 的报表设计界面......... 262 8.4.11 TDBLookupListBox 组件 介绍 .......................................223 8.4.12 TDBLookupComboBox 组件 介绍 .......................................223 9.3.2 Drawing(绘图)组件页 ............ 263 9.3.3 Bar Code(条形码)组件页 ....... 263 9.3.4 Standard(标准)组件页 ............ 263 9.3.5 Report(报表)组件页 ............... 263 8.4.13 TDBCtrlGrid 组件介绍 .........223 9.3.6 其他组件页............................. 264 8.4.14 TDBRichEdit 组件介绍.........224 8.4.15 TDBChart 组件介绍..............224 8.5 实验 .....................................................231 8.5.1 设计数据表结构......................231 8.5.2 设计数据表编辑窗体..............232 8.5.3 设计数据表查询窗体..............238 习题 ..............................................................242 9.4 Delphi 中的 Rave 组件....................... 265 9.4.1 RvProject 组件........................ 265 9.4.2 RvSystem 组件 ....................... 266 9.4.3 其他组件................................. 267 9.5 Rave 报表例程 ................................... 267 9.5.1 设计 Rave 报表....................... 267 9.5.2 调用 Rave 报表....................... 271 第 9 章 报表与图表......................................244 9.6 图表 .................................................... 271 9.1 QuickReport 组件................................244 9.6.1 DBChart 组件 ......................... 271 9.6.2 设计图表 .................................273 11.1.2 现有的组件........................... 309 9.7 实验 .....................................................274 11.1.3 组件模板............................... 310 习题 ..............................................................279 11.1.4 选择祖先类的建议............... 311 第 10 章 面向对象程序设计......................281 11.2 建立组件框架................................... 312 11.3 加入属性........................................... 314 10.1 面向对象程序设计概念....................281 11.3.1 加入简单型的属性............... 314 10.1.1 结构化程序设计方法............281 11.3.2 加入枚举型的属性............... 314 10.1.2 面向对象的设计方法............282 11.3.3 加入集合型的属性............... 315 10.2 类 .......................................................284 11.3.4 加入对象型的属性............... 315 10.2.1 类的定义 ...............................284 11.3.5 加入数组型的属性............... 316 10.2.2 保护方式 ...............................285 11.3.6 公开继承的属性................... 316 10.2.3 类的实例化............................286 11.3.7 给出属性的默认值............... 317 10.2.4 类操作符 ...............................286 11.4 加入方法........................................... 317 10.3 方法 ...................................................287 11.4.1 方法的可见性....................... 317 10.3.1 一般方法 ...............................287 11.4.2 避免内部相关性................... 318 10.3.2 构造方法 ...............................289 11.4.3 给方法命名........................... 318 10.3.3 析构方法 ...............................290 11.4.4 加入静态方法....................... 318 10.3.4 类方法 ...................................290 11.4.5 加入虚拟方法....................... 319 10.3.5 隐含参数 Self ........................291 11.4.6 加入动态方法....................... 319 10.4 继承和多态 .......................................292 11.4.7 加入消息处理方法............... 320 10.4.1 继承 .......................................292 11.5 加入事件........................................... 320 10.4.2 覆盖 .......................................293 11.6 安装组件........................................... 323 10.4.3 抽象类 ...................................294 11.7 实验 .................................................. 324 10.4.4 多态 .......................................295 习题 ............................................................. 327 10.4.5 共同祖先 TObject..................296 10.5 属性 ...................................................297 第 12 章 动态链接库(DLLs)编程............ 329 10.5.1 属性定义 ...............................297 12.1 动态链接库概述............................... 329 10.5.2 属性的访问方法....................298 12.1.1 Windows 系统的动态 10.6 消息 ...................................................299 链接库................................... 329 10.6.1 消息机制 ...............................299 12.1.2 为什么使用 DLL .................. 330 10.6.2 发送消息 ...............................300 12.1.3 DLL 与 EXE 文件之间 10.6.3 处理消息 ...............................301 的区别................................... 331 10.6.4 用户自定义消息....................303 12.1.4 DLL 编写规则 ...................... 331 10.7 实验 ...................................................305 12.2 在 Delphi 中编写 DLLs.................... 331 习题 ..............................................................307 12.2.1 编写一般 DLLs 的步骤........ 332 第 11 章 Delphi 自定义组件的开发.......308 12.2.2 动态链接库中的标准指示 ... 334 12.2.3 库初始化代码的编写........... 335 11.1 选择祖先类 .......................................308 12.2.4 从 DLL 中输出字符串 ......... 337 11.1.1 公共祖先类............................308 12.3 在 Delphi 中 DLLs 的调用............... 340 12.3.1 调用 DLL 方式......................340 12.3.2 静态调用 ...............................340 12.3.3 动态调用 ...............................342 12.4 利用 DLLs 实现窗体重用 ................345 12.4.1 利用 DLLs 实现窗体重用 的一般步骤............................346 12.4.2 使用 DLL 模态窗体..............346 12.4.3 DLL 中的非模态窗体...........346 12.5 DLL 与 Delphi 组件包......................351 12.6 实验 ...................................................352 习题 ..............................................................356 第 13章 多线程.............................................358 13.1 多线程概述 .......................................358 13.1.1 什么是多线程........................358 13.1.2 使用多线程的优缺点............358 13.1.3 编写多线程应用程序步骤....359 13.2 多线程编程 .......................................359 13.2.1 创建线程对象........................359 13.2.2 线程的同步............................361 13.2.3 设置线程的优先级................362 13.2.4 挂起和唤醒............................363 13.2.5 缓存线程对象........................363 13.2.6 线程终止 ...............................365 13.2.7 一个多线程排序程序............370 13.3 实验 ...................................................375 习题 ............................................................. 379 第 14 章 文件操作 ....................................... 381 14.1 文件操作命令................................... 381 14.1.1 文件的类型........................... 381 14.1.2 文件的定义........................... 381 14.1.3 文件管理命令....................... 382 14.1.4 文本文件命令....................... 382 14.1.5 输入输出命令....................... 383 14.2 文本文件........................................... 383 14.2.1 打开文本文件....................... 383 14.2.2 关闭文本文件....................... 384 14.2.3 写入文本文件....................... 384 14.2.4 读取文本文件....................... 385 14.3 非文本文件....................................... 386 14.3.1 类型文件............................... 386 14.3.2 无类型文件........................... 389 14.4 文件系统........................................... 390 14.4.1 文件系统组件....................... 390 14.4.2 文件控制单元....................... 393 14.5 实验 .................................................. 396 14.5.1 文件名操作........................... 396 14.5.2 文件读写操作....................... 399 习题 ............................................................. 401 参考文献................................................... 403
Platform: | Size: 3534536 | Author: chaoyan_ma@126.com | Hits:

[Delphi VCLdelphi,16转10, hextoint

Description: delphi 中 16转10 测试好用
Platform: | Size: 177851 | Author: wowwyfs | Hits:

[Windows DevelopSenfore_DragDrop_v4.1

Description: Drag and Drop Component Suite Version 4.1 Field test 5, released 16-dec-2001 ?1997-2001 Angus Johnson & Anders Melander http://www.melander.dk/delphi/dragdrop/ ------------------------------------------- Table of Contents: ------------------------------------------- 1. Supported platforms 2. Installation 3. Getting started 4. Known problems 5. Support and feedback 6. Bug reports 7. Upgrades and bug fixes 8. Missing in this release 9. New in version 4.x 10. TODO 11. Licence, Copyright and Disclaimer 12. Release history ------------------------------------------- 1. Supported platforms: ------------------------------------------- This release supports Delphi 4-6 and C++ Builder 4-5. Earlier versions of Delphi and C++ Builder will not be supported. If you need Delphi 3 or C++ Builder 3 support you will have to revert to version 3.7 of the Drag and Drop Component Suite. The library has been tested on NT4 service pack 5 and Windows 2000. Windows 95, 98, ME and XP should be supported, but has not been tested. Linux and Kylix are not supported. There are *NO* plans to port the library to Kylix. The drag and drop protocols available on Linux are too much of a mess at this time. ------------------------------------------- 2. Installation: ------------------------------------------- 1) Before you do anything else, read the "Known problems" section of this document. 2) Install the source into a directory of your choice. The files are installed into three directories: DragDrop DragDrop\Components DragDrop\Demo 3) Install and compile the appropriate design time package. The design time packages are located in the Components directory. Each version of Delphi and C++ Builder has its own package; DragDropD6.dpk for Delphi 6, DragDropD5.dpk for Delphi 5, DragDropC5.bpk for C++ Builder 5, etc. 4) Add the Drag and Drop Component Suite components directory to your library path. 5) Load the demo project group: demo\dragdrop_delphi.bpg for Delphi 5 and 6 demo\dragdrop_bcb4.bpg for C++ Builder 4 demo\dragdrop_bcb5.bpg for C++ Builder 5 The project group contains all the demo applications. 6) If your version of Delphi does not support text format DFM files (e.g. Delphi 4 doesn't), you will have to use the convert.exe utility supplied with Delphi to convert all the demo form files to binary format. A batch file, convert_forms_to delphi_4_format.bat, is supplied in the demo directory which automates the conversion process. The C++ Builder demo forms are distributed in binary format. 7) If upgrading from a previous version of the Drag and Drop Component Suite, please read the document "upgrading_to_v4.txt" before you begin working on your existing projects. Note about "Property does not exist" errors: Since all demos were developed with the latest version of Delphi, most of the demo forms probably contains references to properties that doesn't exist in earlier versions of Delphi and C++ Builder. Because of this you will get fatal run-time errors (e.g. "Error reading blahblahblah: Property does not exist.") if you attemt to run the demos without fixing this problem. Luckily it is very easy to make the forms work again; Just open the forms in the IDE, then select "Ignore All" when the IDE complains that this or that property doesn't exist and finally save the forms. ------------------------------------------- 3. Getting started: ------------------------------------------- It is recommended that you start by running each of the demo applications and then look through the demo source. Each demo application is supplied with a readme.txt file which briefly describes what the demo does and what features it uses. The demos should be run in the order in which they are listed in the supplied project group. Even if you have used previous versions of the Drag and Drop Component Suite it would be a good idea to have a quick look at the demos. The library has been completely rewritten and a lot of new features has been added. ------------------------------------------- 4. Known problems: ------------------------------------------- * The Shell Extension components does not support C++ Builder 4. For some strange reason the components causes a link error. * There appear to be sporadic problems compiling with C++ Builder 5. Several user have reported that they occasionally get one or more of the following compiler errors: [C++ Error] DragDropFile.hpp(178): E2450 Undefined structure '_FILEDESCRIPTORW' [C++ Error] DropSource.hpp(135): E2076 Overloadable operator expected I have not been able to reproduce these errors, but I believe the following work around will fix the problem: In the project options of *all* projects which uses these components, add the following conditional define: NO_WIN32_LEAN_AND_MEAN The define *must* be made in the project options. It is not sufficient to #define it in the source. If you manage to compile with C++ Builder (any version), I would very much like to know about it. * Delphi's and C++ Builder's HWND and THandle types are not compatible. For this reason it might be nescessary to cast C++ Builder's HWND values to Delphi's THandle type when a HWND is passed to a function. E.g.: if (DragDetectPlus(THandle(MyControl->Handle), Point(X, Y))) { ... } * Virtual File Stream formats can only be pasted from the clipboard with live data (i.e. FlushClipboard/OleFlushClipboard hasn't been called on the data source). This problem affects TFileContentsStreamOnDemandClipboardFormat and the VirtualFileStream demo. This is believed to be a bug in the Windows clipboard and a work around hasn't been found yet. * Asynchronous targets appears to be broken in the current release. * When TDropFileTarget.GetDataOnEnter is set to True, the component doesn't work with WinZip. Although the file names are received correctly by TDropFileTarget, WinZip doesn't extract the files and the files thus can't be copied/moved. This is caused by a quirk in WinZip; Apparently WinZip doesn't like IDataObject.GetData to be called before IDropTarget.Drop is called. ------------------------------------------- 5. Support and feedback: ------------------------------------------- Since these components are freeware they are also unsupported. You are welcome to ask for help via email, but I cannot guarantee that I will have time to help you or even reply to your mail. If you absolytely can't live without my help, you can alway try bribing me. You can also try asking for help in the Delphi newsgroups. Since the Drag and Drop Component Suite is in widespread use, there's a good chance another user can help you. I recommend the following newsgroups for issues regarding this library (or COM based Drag/Drop in general): borland.public.delphi.winapi borland.public.delphi.thirdparty-tools borland.public.delphi.oleautomation borland.public.cppbuilder.winapi borland.public.cppbuilder.thirdparty-tools Please choose the most appropiate newsgroup for your question. Do not cross post to them all. Before posting to the newsgroups, I suggest you try to search for an answer on the Google (DejaNews) search engine: http://groups.google.com Chances are that your question has been asked and answered before. If you have suggestions for improvements please mail them to me: anders@melander.dk Please include the words "Drag Drop" in the subject of any email regarding these components. ------------------------------------------- 6. Bug reports: ------------------------------------------- Bugs can either be reported at my home page (http://www.melander.dk/) or mailed directly to me: anders@melander.dk. When reporting a bug, please provide the following information: * The exact version of the Drag and Drop Component Suite you are using. * The exact version of Delphi or C++ Builder you are using. * The name and exact version of your operating system (e.g. NT4 SP5). * The exact version of the Internet Explorer installed on your system. If you can provide me with a minimal application which reproduces the problem, I can almost guarantee that I will be able to fix the problem in very short time. Please supply only the source files (pas, dfm, dpr, dof, res, etc.) and mail them as a single zip file. If I need a compiled version I will ask for it. If you feel you need to send me a screen shot, please send it in GIF or PNG format. If you mail a bug report to me, please include the words "Drag Drop" in the subject of your email. ------------------------------------------- 7. Upgrades and bug fixes: ------------------------------------------- Upgrades can be downloaded from my home page: http://www.melander.dk/delphi/dragdrop/ Bug fixes will also be posted to the above page. If you have registered for update notification via the installation program, you will receive email notification when a new release is available. You will not be notified of bug fixes. You can use the installation program to check for and download new releases and to check for known bugs. Note: If a new release is made available and you are not notified even though you registered for notification, you probably mistyped your email address during installation; About 10% of all registrations supply an invalid email address. ------------------------------------------- 8. Missing in this release: ------------------------------------------- * On-line help has not been updated and included in the kit due to late changes in the Delphi 6 help system and lack of time. If time permits, I will update the help and include it in a future release. ------------------------------------------- 9. New in version 4.x: ------------------------------------------- * Completely redesigned and rewritten. Previous versions of the Drag and Drop Component Suite used a very monolithic design and flat class hierachy which made it a bit cumbersome to extend the existing components or implement new ones. Version 4 is a complete rewrite and redesign, but still maintains compatibility with previous versions. The new V4 design basically separates the library into three layers: 1) Clipboard format I/O. 2) Data format conversion and storage. 3) COM Drag/Drop implementation and VCL component interface. The clipboard format layer is responsible for reading and writing data in different formats to and from an IDataObject interface. For each different clipboard format version 4 implements a specialized class which knows exactly how to interpret the clipboard format. For example the CF_TEXT (plain text) clipboard format is handled by the TTextClipboardFormat class and the CF_FILE (file names) clipboard format is handled by the TFileClipboardFormat class. The data format layer is primarily used to render the different clipboard formats to and from native Delphi data types. For example the TTextDataFormat class represents all text based clipboard formats (e.g. TTextClipboardFormat) as a string while the TFileDataFormat class represents a list of file names (e.g. TFileClipboardFormat) as a string list. The conversion between different data- and clipboard formats is handled by the same Assign/AssignTo mechanism as the VCLs TPersistent employes. This makes it possible to extend existing data formats with support for new clipboard formats without modification to the existing classes. The drag/drop component layer has several tasks; It implements the actual COM drag/drop functionality (i.e. it implements the IDropSource, IDropTarget and IDataObject interfaces (along with several other related interfaces)), it surfaces the data provided by the data format layer as component properties and it handles the interaction between the whole drag/drop framework and the users code. The suite provides a multitude of different components. Most are specialized for different drag/drop tasks (e.g. the TDropFileTarget and TDropFilesSource components for drag/drop of files), but some are either more generic, handling multiple unrelated formats, or simply helper components which are used to extend the existing components or build new ones. * Support for Delphi 6. Version 4.0 was primarily developed on Delphi 6 and then ported back to previous versions of Delphi and C++ Builder. * Support for Windows 2000 inter application drag images. On Windows platforms which supports it, drag images are now displayed when dragging between applications. Currently only Windows 2000 supports this feature. On platforms which doesn't support the feature, drag images are only displayed whithin the source application. * Support for Windows 2000 asynchronous data transfers. Asynchronous data tranfers allows the drop source and targets to perform slow transfers or to transfer large amounts of data without blocking the user interface while the data is being transfered. For platforms other than Windows 2000, the new TDropSourceThread class can be used to provide similar (but more limited) asynchronous data transfer capabilities. * Support for optimized and non-optimized move. When performing drag-move operations, it is now possible to specify if the target (optimized move) or the source (non-optimized move) is responsible for deleting the source files. * Support for delete-on-paste. When data is cut to the clipboard, it is now possible to defer the deletion of the source data until the target actually pastes the data. The source is notified by an event when the target pastes the data. * Extended clipboard support. All formats and components (both source and target) now support clipboard operations (copy/cut/paste) and the VCL clipboard object. * Support for shell drop handlers. The new TDropHandler component can be used to write drop handler shell extensions. A drop handler is a shell extension which is executed when a user drags and drops one or more files on a file associated wth your application. * Support for shell drag drop handlers. The new TDragDropHandler component can be used to write drag drop handler shell extensions. A drag drop handler is a shell extension which can extend the popup menu which is displayed when a user drag and drops files with the right mouse button. * Support for shell context menu handlers. The new TDropContextMenu component can be used to write context menu handler shell extensions. A context menu handler is a shell extension which can extend the popup menu which is displayed when a user right-clicks a file in the shell. * Drop sources can receive data from drop targets. It is now possible for drop targets to write data back to the drop source. This is used to support optimized-move, delete-on-paste and inter application drag images. * Automatic re-registration of targets when the target window handle is recreated. In previous versions, target controls would loose their ability to accept drops when their window handles were recreated by the VCL (e.g. when changing the border style or docking a form). This is no longer a problem. * Support for run-time definition of custom data formats. You can now add support for new clipboard formats without custom components. * Support for design-time extension of existing source and target components. Using the new TDataFormatAdapter component it is now possible to mix and match data formats and source and target components at design time. E.g. the TDropFileTarget component can be extended with URL support. * It is now possible to completely customize the target auto-scroll feature. Auto scroling can now be completely customized via the OnDragEnter, OnDragOver, OnGetDropEffect and OnScroll events and the public NoScrollZone and published AutoScroll properties. * Multiple target controls per drop target component. In previous versions you had to use one drop target component per target control. With version 4, each drop target component can handle any number of target controls. * It is now possible to specify the target control at design time. A published Target property has been added to the drop target components. * Includes 20 components: - TDropFileSource and TDropFileTarget Used for drag and drop of files. Supports recycle bin and PIDLs. - TDropTextSource and TDropTextTarget Used for drag and drop of text. - TDropBMPSource and TDropBMPTarget Used for drag and drop of bitmaps. - TDropPIDLSource and TDropPIDLTarget Used for drag and drop of PIDLs in native format. - TDropURLSource and TDropURLTarget Used for drag and drop of internet shortcuts. - TDropDummyTarget Used to provide drag/drop cursor feedback for controls which aren't registered as drop targets. - TDropComboTarget (new) Swiss-army-knife target. Accepts text, files, bitmaps, meta files, URLs and file contents. - TDropMetaFileTarget (new) Target which can accept meta files and enhanced meta files. - TDropImageTarget (new) Target which can accept bitmaps, DIBs, meta files and enhanced meta files. - TDragDropHandler (new) Used to implement Drag Drop Handler shell extensions. - TDropHandler (new) Used to implement Shell Drop Handler shell extensions. - TDragDropContext (new) Used to implement Shell Context Menu Handler shell extensions. - TDataFormatAdapter (new) Extends the standard source and target components with support for extra data formats. An alternative to TDropComboTarget. - TDropEmptySource and TDropEmptyTarget (new) Target and source components which doesn't support any formats, but can be extended with TDataFormatAdapter components. * Supports 27 standard clipboard formats: Text formats: - CF_TEXT (plain text) - CF_UNICODETEXT (Unicode text) - CF_OEMTEXT (Text in the OEM characterset) - CF_LOCALE (Locale specification) - 'Rich Text Format' (RTF text) - 'CSV' (Tabular spreadsheet text) File formats: - CF_HDROP (list of file names) - CF_FILEGROUPDESCRIPTOR, CF_FILEGROUPDESCRIPTORW and CF_FILECONTENTS (list of files and their attributes and content). - 'Shell IDList Array' (PIDLs) - 'FileName' and 'FileNameW' (single filename, used for 16 bit compatibility). - 'FileNameMap' and 'FileNameMapW' (used to rename files, usually when dragging from the recycle bin) Image formats: - CF_BITMAP (Windows bitmap) - CF_DIB (Device Independant Bitmap) - CF_METAFILEPICT (Windows MetaFile) - CF_ENHMETAFILE (Enhanced Metafile) - CF_PALETTE (Bitmap palette) Internet formats: - 'UniformResourceLocator' and 'UniformResourceLocatorW' (Internet shortcut) - 'Netscape Bookmark' (Netscape bookmark/URL) - 'Netscape Image Format' (Netscape image/URL) - '+//ISBN 1-887687-00-9::versit::PDI//vCard' (V-Card) - 'HTML Format' (HTML text) - 'Internet Message (rfc822/rfc1522)' (E-mail message in RFC822 format) Misc. formats: - CF_PREFERREDDROPEFFECT and CF_PASTESUCCEEDED (mostly used by clipboard) - CF_PERFORMEDDROPEFFECT and CF_LOGICALPERFORMEDDROPEFFECT (mostly used for optimized-move) - 'InShellDragLoop' (used by Windows shell) - 'TargetCLSID' (Mostly used when dragging to recycle-bin) * New source events: - OnGetData: Fired when the target requests data. - OnSetData: Fired when the target writes data back to the source. - OnPaste: Fired when the target pastes data which the source has placed on the clipboard. - OnAfterDrop: Fired after the drag/drop operation has completed. * New target events: - OnScroll: Fires when the target component is about to perform auto-scroll on the target control. - OnAcceptFormat: Fires when the target component needs to determine if it will accept a given data format. Only surfaced in the TDropComboTarget component. * 8 new demo applications, 19 in total. ------------------------------------------- 10. TODO (may or may not be implemented): ------------------------------------------- * Async target demo (with and without IAsyncOperation support). * Scrap file demo. * Native Outlook message format. * Structured storage support (IStorage encapsulation). ------------------------------------------- 11. Licence, Copyright and Disclaimer: ------------------------------------------- The Drag and Drop Component Suite is Copyright ?1997-2001 Angus Johnson and Anders Melander. All rights reserved. The software is copyrighted as noted above. It may be freely copied, modified, and redistributed, provided that the copyright notice(s) is preserved on all copies. The Drag and Drop Component Suite is freeware and we would like it to remain so. This means that it may not be bundled with commercial libraries or sold as shareware. You are welcome to use it in commercial and shareware applications providing you do not charge for the functionality provided by the Drag and Drop Component Suite. There is no warranty or other guarantee of fitness for this software, it is provided solely "as is". You are welcome to use the source to make your own modified components, and such modified components may be distributed by you or others if you include credits to the original components, and do not charge anything for your modified components. ------------------------------------------- 12. Version 4 release history: ------------------------------------------- 16-dec-2001 * Ported to C++ Builder 4. * Released for test as v4.1 FT5. 12-dec-2001 * Fixed C++ Builder name clash between TDropComboTarget.GetMetaFile and the GetMetaFile #define in wingdi.h 1-dec-2001 * The IAsyncOperation interface is now also declared as IAsyncOperation2 and all references to IAsyncOperation has been replaced with IAsyncOperation2. This was done to work around a bug in C++ Builder. Thanks to Jonathan Arnold for all his help with getting the components to work with C++ Builder. Without Jonathan's help version 4.1 would prabably have shipped witout C++ Builder support and certainly without any C++ Builder demos. * Demo applications for C++ Builder. The C++ Builder demos were contributed by Jonathan Arnold. 27-nov-2001 * TCustomDropTarget.Droptypes property renamed to DropTypes (notice the case). Thanks to Krystian Brazulewicz for spotting this. 24-nov-2001 * The GetURLFromString function in the DragDropInternet unit has been made public due to user request. 21-nov-2001 * Modified MakeHTML function to comply with Microsoft's description of the CF_HTML clipboard format. * Added MakeTextFromHTML function to convert CF_HTML data to plain HTML. Provides the reverse functionality of MakeHTML. * Added HTML support to TTextDataFormat class and TDropTextSource and TDropTextTarget components. * Fixed C++ Builder 5 problem with IAsyncOperation. * Released for test as v4.1 FT4. 10-nov-2001 * Added NetscapeDemo demo application. Demonstrates how to receive messages dropped from Netscape. This demo was sponsored by ThoughtShare Communications Inc. * Released for test as v4.1 FT3. 23-oct-2001 * Conversion priority of TURLDataFormat has been changed to give the File Group Descritor formats priority over the Internet Shortcut format. This resolves a problem where dropping an URL on the desktop would cause the desktop to assume that an Active Desktop item was to be created instead of an Internet Shortcut. Thanks to Allen Martin for reporting this problem. By luck this modification also happens to work around a bug in Mozilla and Netscape 6; Mozilla incorrectly supplies the UniformResourceLocator clipboard format in unicode format instead of ANSI format. Thanks to Florian Kusche for reporting this problem. * Added support for TFileGroupDescritorWClipboardFormat to TURLDataFormat. * Added declaration of FD_PROGRESSUI to DragDropFormats. * Added TURLWClipboardFormat which implements the "UniformResourceLocatorW" (a.k.a. CFSTR_INETURLW) clipboard format. Basically a Unicode version of CFSTR_SHELLURL/CFSTR_INETURL. The TURLWClipboardFormat class isn't used anywhere yet but will probably be supported by TURLDataFormat (and thus TDropURLTarget/TDropURLSource) in a later release. * Added experimental Shell Drag Image support. This relies on undodumented shell32.dll functions and probably won't be fully support before v4.2 (if ever). See InitShellDragImage in DropSource.pas. Thanks to Jim Kueneman for bringning these functions to my attention. 13-oct-2001 * TCustomDropSource.Destroy and TCustomDropMultiSource.Destroy changed to call FlushClipboard instead of EmptyClipboard. This means that clipboard contents will be preserved when the source application/component is terminated. * Added clipboard support to VirtualFileStream demo. * Modified VirtualFileStream demo to work around clipboard quirk with IStream medium. * Modified TCustomSimpleClipboardFormat to disable TYMED_ISTORAGE support by default. At present TYMED_ISTORAGE is only supported for drop targets and enabling it by default in TCustomSimpleClipboardFormat.Create caused a lot of clipboard operations (e.g. copy/paste of text) to fail. Thanks to Michael J Marshall for bringing this problem to my attention. * Modified TCustomSimpleClipboardFormat to read from the the TYMED_ISTREAM medium in small (1Mb) chunks and via a global memory buffer. This has resultet in a huge performance gain (several orders of magnitude) when transferring large amounts of data via the TYMED_ISTREAM medium. 3-oct-2001 * Fixed bug in TCustomDropSource.SetImageIndex. Thanks to Maxim Abramovich for spotting this. * Added missing default property values to TCustomDropSource. Thanks to Maxim Abramovich for spotting this. * DragDrop.pas and DragDropContext.pas updated for Delphi 4. * Reimplemented utility to convert DFM form files from Delphi 5/6 test format to Delphi 4/5 binary format. * Improved unregistration of Shell Extensions. Shell extension now completely (and safely) remove their registry entries when unregistered. * Deprecated support for C++ Builder 3. * Released for test as v4.1 FT2. 25-sep-2001 * Rewritten ContextMenuHandlerShellExt demo. The demo is now actually a quite useful utility which can be used to register and unregister ActiveX controls, COM servers and type libraries. It includes the same functionality as Borland's TRegSvr utility. 20-sep-2001 * Added support for cascading menus, ownerdraw and menu bitmaps to TDropContextMenu component. * Modified TFileContentsStreamOnDemandClipboardFormat to handle invalid parameter value (FormatEtcIn.lindex) when data is copied to clipboard. This works around an apparent bug in the Windows clipboard. Thanks to Steve Moss for reporting this problem. * Modified TEnumFormatEtc class to not enumerate empty clipboard formats. Thanks to Steve Moss for this improvement. 1-sep-2001 * Introduced TCustomDropTarget.AutoRegister property. The AutoRegister property is used to control if drop target controls should be automatically unregistered and reregistered when their window handle is recreated by the VCL. If AutoRegister is True, which is the default, then automatic reregistration will be performed. This property was introduced because the hidden child control, which is used to monitor the drop target control's window handle, can have unwanted side effects on the drop target control (e.g. TToolBar). * Deprecated support for Delphi 3. 22-jun-2001 * Redesigned TTextDataFormat to handle RTF, Unicode, CSV and OEM text without conversion. Moved TTextDataFormat class to DragDropText unit. Added support for TLocaleClipboardFormat. * Surfaced new text formats as properties in TDropTextSource and TDropTextTarget. Previous versions of the Text source and target components represented all supported text formats via the Text property. In order to enable users to handle the different text formats independantly, the text source and target components now has individual properties for ANSI, OEM, Unicode and RTF text formats. The text target component can automatically synthesize some of the formats from the others (e.g. OEM text from ANSI text), but applications which previously relied on all formats being represented by the Text property will have to be modified to handle the new properties. * Added work around for problem where TToolBar as a drop target would display the invisible target proxy window. * Fixed wide string bug in WriteFilesToZeroList. Thanks to Werner Lehmann for spotting this. 15-jun-2001 * Added work-around for Outlook Express IDataObject.QueryGetData quirk. 3-jun-2001 * Ported to C++ Builder 4 and 5. * Added missing DragDropDesign.pas unit to design time packages. * First attempt at C++ Builder 3 port.... failed. * Improved handling of oversized File Group Descriptor data. * Added support for IStorage medium to TFileContentsStreamClipboardFormat. This allows the TDropComboTarget component to accept messages dropped from Microsoft Outlook. This work was sponsored by ThoughtShare Communications Inc. 23-may-2001 * Ported to Delphi 4. * First attempt at C++ Builder 5 port.... failed. 18-may-2001 * Released as version 4.0. Note: Version 4.0 was released exclusively on the Delphi 6 Companion CD. * ContextMenuDemo and DropHandlerDemo application has been partially rewritten and renamed. ContextMenuDemo is now named ContextMenuHandlerShellExt. DropHandlerDemo is now named DropHandlerShellExt. * TDropContextMenu component has been rewitten. The TDropContextMenu now implements a context menu handler shell extension. In previous releases it implemented a drag drop handler shell extension. * The DragDropHandler.pas unit which implements the TDropHandler component has been renamed to DropHandler.pas. * Added new TDragDropHandler component. The new component, which lives in the DragDropHandler unit, is used to implement drag drop handler shell extensions. * Added DragDropHandlerShellExt demo application. * Removed misc incomplete demos from kit. * Fixed minor problem in VirtualFileStream demo which caused drops from the VirtualFile demo not to transfer content correctly. 11-may-2001 * Converted all demo forms to text DFM format. This has been nescessary to maintain compatibility between all supported versions of Delphi. * Fixed a bug in GetPIDLsFromFilenames which caused drag-link of files (dtLink with TDropFileSource) not to work. * Added readme.txt files to some demo applications. * Added missing tlb and C++ Builder files to install kit. * Released as FT4. 6-may-2001 * Added missing dfm files to install kit. * Tested with Delphi 5. Fixed Delphi 5 compatibility error in main.dfm of DragDropDemo. * Removed misc compiler warnings. * The AsyncTransferTarget and OleObjectDemo demos were incomplete and has been removed from the kit for the V4.0 release. The demos will be included in a future release. * Released as FT3. 3-may-2001 * Added missing dpr and bpg files to install kit. * Updated readme.txt with regard to lack of C++ Builder demos. * Released as FT2. 29-apr-2001 * Cleaned up for release. * Released as FT1. 23-feb-2001 * Modified TCustomDropTarget.FindTarget to handle overlapping targets (e.g. different targets at the same position but on different pages of a page control or notebook). Thanks to Roger Moe for spotting this problem. 13-feb-2001 * Renamed AsyncTransfer2 demo to AsyncTransferSource. * Added AsyncTransferTarget demo. * Replaced TChart in AsyncTransfer2 demo with homegrown pie-chart-thing. * Modified all IStream based target formats to support incremental transfer. * URW533 problem has finally been fixed. The cause of the problem, which is a bug in Delphi, was found by Stefan Hoffmeister. * Fixed free notification for TDropContextmenu and TDataFormatAdapter. 27-dec-2000 * Moved TVirtualFileStreamDataFormat and TFileContentsStreamOnDemandClipboardFormat classes from VirtualFileStream demo to DragDropFormats unit. * Added TClipboardFormat.DataFormat and TClipboardFormats.DataFormat property. * Added TDropEmptySource and TDropEmptyTarget components. These are basically do-nothing components for use with TDataFormatAdapter. * Rewritten AsyncTransfer2 demo. The demo now uses TDropEmptySource, TDataFormatAdapter and TVirtualFileStreamDataFormat to transfer 10Mb of data with progress feedback. * Rewritten VirtualFileStream demo. The demo now uses TDropEmptySource, TDropEmptyTarget, TDataFormatAdapter and TVirtualFileStreamDataFormat. * Fixed memory leak in TVirtualFileStreamDataFormat. This leak only affected the old VirtualFileStream demo. * Added support for full File Descriptor attribute set to TVirtualFileStreamDataFormat. It is now possible to specify file attributes such as file size and last modified time in addition to the filename. I plan to add similar features to the other classes which uses FileDescriptors (e.g. TDropFileSource and TDropFileTarget). 21-dec-2000 * Ported to Delphi 4. * Added workaround for design bug in either Explorer or the clipboard. Explorer and the clipboard's requirements to the cursor position of an IStream object are incompatible. Explorer requires the cursor to be at the beginning of stream and the clipboard requires the cursor to be at the end of stream. 15-dec-2000 * Fixed URW533 problem. I'll leave the description of the workaround in here for now in case the problem resurfaces. 11-dec-2000 * Fixed bug in filename to PIDL conversion (GetPIDLsFromFilenames) which affected TDropFileTarget. Thanks to Poul Halgaard J鴕gensen for reporting this. 4-dec-2000 * Added THTMLDataFormat. * Fixed a a few small bugs which affected clipboard operations. * Added {$ALIGN ON} to dragdrop.inc. Apparently COM drag/drop requires some structures to be word alligned. This change fixes problems where some of the demos would suddenly stop working. * The URW533 problem has resurfaced. See the "Known problems" section below. 13-nov-2000 * TCopyPasteDataFormat has been renamed to TFeedbackDataFormat. * Added support for the Windows 2000 "TargetCLSID" format with the TTargetCLSIDClipboardFormat class and the TCustomDropSource.TargetCLSID property. * Added support for the "Logical Performed DropEffect" format with the TLogicalPerformedDropEffectClipboardFormat class. The class is used internally by TCustomDropSource. 30-oct-2000 * Added ContextMenu demo and TDropContextMenu component. Demonstrates how to customize the context menu which is displayed when a file is dragged with the right mouse button and dropped in the shell. * Added TCustomDataFormat.GetData. With the introduction of the GetData method, Data Format classes can now be used stand-alone to extract data from an IDataObject. 20-oct-2000 * Added VirtualFileStream demo. Demonstrates how to use the "File Contents" and "File Group Descritor" clipboard formats to drag and drop virtual files (files which doesn't exist physically) and transfer the data on-demand via a stream. 14-oct-2000 * Added special drop target registration of TCustomRichEdit controls. TCustomRichEdit needs special attention because it implements its own drop target handling which prevents it to work with these components. TCustomDropTarget now disables a rich edit control's built in drag/drop handling when the control is registered as a drop target. * Added work around for Windows bug where IDropTarget.DragOver is called regardless that the drop has been rejected in IDropTarget.DragEnter. 12-oct-2000 * Fixed bug that caused docking to interfere with drop targets. Thanks to G. Bradley MacDonald for bringing the problem to my attention. 30-sep-2000 * The DataFormats property has been made public in the TCustomDropMultiTarget class. * Added VirtualFile demo. Demonstrates how to use the TFileContentsClipboardFormat and TFileGroupDescritorClipboardFormat formats to drag and drop a virtual file (a file which doesn't exist physically). 28-sep-2000 * Improved drop source detection of optimized move. When an optimized move is performed by a drop target, the drop source's Execute method will now return drDropMove. Previously drCancel was returned. The OnAfterDrop event must still be used to determine if a move operation were optimized or not. * Modified TCustomDropTarget.GetPreferredDropEffect to get data from the current IDataObject instead of from the VCL global clipboard. 18-sep-2000 * Fixed bug in DropComboTarget caused by the 17-sep-2000 TStreams modification. 17-sep-2000 * Added AsyncTransfer2 demo to demonstrate use of TDropSourceThread. * Renamed TStreams class to TStreamList. 29-aug-2000 * Added TDropSourceThread. TDropSourceThread is an alternative to Windows 2000 asynchronous data transfers but also works on other platforms than Windows 2000. TDropSourceThread is based on code contributed by E. J. Molendijk. 24-aug-2000 * Added support for Windows 2000 asynchronous data transfers. Added IAsyncOperation implementation to TCustomDropSource. Added TCustomDropSource.AllowAsyncTransfer and AsyncTransfer properties. 5-aug-2000 * Added work around for URW533 compiler bug. * Fixed D4 and D5 packages and updated a few demos. Obsolete DropMultiTarget were still referenced a few places. * Documented work around for C++ Builder 5 compiler error. See the Known Problems section later in this document for more information. 2-aug-2000 * The package files provided in the kit is now design-time only packages. In previous versions, the packages could be used both at design- and run-time. The change was nescessary because the package now contains design-time code. * Added possible work around for suspected C++ Builder bug. The bug manifests itself as a "Overloadable operator expected" compile time error. See the "Known problems" section of this document. * Rewrote CustomFormat1 demo. * Added CustomFormat2 demo. * TDataDirection members has been renamed from ddGet and ddSet to ddRead and ddWrite. * All File Group Descritor and File Contents clipboard formats has been moved from the DragDropFile unit to the DragDropFormats unit. * File Contents support has been added to TTextDataFormat. The support is currently only enabled for drop sources. * Renamed TDropMultiTarget component to TDropComboTarget. Note: This will break applications which uses the TDropMultiTarget component. You can use the following technique to port application from previous releases: 1) Install the new components. 2) Repeat step 3-8 for all units which uses the TDropMultiTarget component. 3) Make a backup of the unit (both pas and dfm file) just in case... 4) Open the unit in the IDE. 5) In the .pas file, replace all occurances of "TDropMultiTarget" with "TDropComboTarget". 6) View the form as text. 7) Replace all occurances of "TDropMultiTarget" with "TDropComboTarget". 8) Save the unit. * Renamed a lot of demo files and directories. * Added work around for yet another bug in TStreamAdapter. * Added TCustomStringClipboardFormat as new base class for TCustomTextClipboardFormat. This changes the class hierachy a bit for classes which previously descended from TCustomTextClipboardFormat: All formats which needs zero termination now descend from TCustomTextClipboardFormat and the rest descend from TCustomStringClipboardFormat. Added TrimZeroes property. Fixed zero termination bug in TCustomTextClipboardFormat and generally improved handling of zero terminated strings. Disabled zero trim in TCustomStringClipboardFormat and enabled it in TCustomTextClipboardFormat. 23-jul-2000 * Improved handling of long file names in DropHandler demo. Added work around for ParamStr bug. * Added TDataFormatAdapter component and adapter demo. TDataFormatAdapter is used to extend the existing source and target components with additional data format support without modifying them. It can be considered an dynamic alternative to the current TDropMultiTarget component. 17-jul-2000 * TDropHandler component and DropHandler demo fully functional. 14-jul-2000 * Tested with C++ Builder 5. * Fixed sporadic integer overflow bug in DragDetectPlus function. * Added shell drop handler support with TDropHandler component. This is a work in progress and is not yet functional. 1-jul-2000 * Tested with Delphi 4. * Support for Windows 2000 inter application drag images. * TRawClipboardFormat and TRawDataFormat classes for support of arbitrary unknown clipboard formats. The classes are used internally in the TCustomDropSource.SetData method to support W2K drag images.
Platform: | Size: 2130304 | Author: smj_9547 | Hits:

[Other汉字库

Description: 16点阵汉字库程序(Delphi)-16 (Delphi)
Platform: | Size: 263168 | Author: 123 | Hits:

[Windows Develop16

Description: 基于ipx协议的delphi控件演示程序-A delphi ActivX demo program based on ipx protocol.
Platform: | Size: 134144 | Author: zxl | Hits:

[Delphi/CppBuilderdelphi 编程实例与技巧

Description: Delphi是由Inprise公司推出的面向对象的可视化软件开发工具。本书共分三部分、16章,主要介绍Delphi 集成开发环境,对象Pascal语言、组件、通用编程技术、动态链接库、多线程、多媒体编程、数据库编程、网络编程和Windows API编程等。 -Inprise Delphi is the company's object-oriented visualization software development tools. The book has three parts, 16 chapters, introduces Delphi Integrated Development Environment, Object Pascal language, components, common programming techniques, dynamic link library, multi-threaded, multi-media programming, database programming, network programming and other Windows API programming.
Platform: | Size: 12046336 | Author: 白宇 | Hits:

[Crack HackCRC校验算法(包含8位16位32位)

Description: CRC校验算法(包含8位16位32位),原文件中说明也不多,有兴趣的可以研究一下-CRC algorithm (includes 8 16 32), the original document which is not large, interested parties can study
Platform: | Size: 136192 | Author: 绝无重复 | Hits:

[Crack Hack16位CRC算法

Description: 16位CRC:生成CRC16表(256项),用于快速查表计算 // 在程序初始化时就先调用,预先生成CRC16Tab[256]查表数据-16 CRC : formation CYXLIC REDUNDANCY (256), Fast look-up table for calculation// initialization procedure on first call, pre-generation CRC16Tab [256] Lookup Data
Platform: | Size: 134144 | Author: 456 | Hits:

[Algorithmcalc

Description: 2,4,8,16进制转换,及ASCII码转换,字符串转换-2,4,8,16 hexadecimal conversion, and the ASCII code conversion, the string conversion
Platform: | Size: 466944 | Author: 李永刚 | Hits:

[ADO-ODBCEhlib.v4.2.16

Description: Ehlib.v4.2.16 delphi&BCB dbgrid控件-Ehlib.v4.2.16delphi
Platform: | Size: 3380224 | Author: 幽谷客要 | Hits:

[Delphi VCLdelphi-TXTReader

Description: 功能说明 1、运行于Windows9x、WindowsNT系统上,不必安装,可以直接运行。 2、最大可以打开2MB的文件,最多可以保存50个最新打开的文件。 3、支持TXT、HTML、RTF、GB、ZIP等格式的文件。 4、书本最小化后,以图标的形式存放于任务栏“托盘”中。 5、可以进行BIG5=>GB、GB=>BIG5双向转换,以及GB、BIG5码的自动识别。不需要其它内码转换工具。 6、可以进行编辑。 7、智能分段。 8、行距加倍和全屏显示。 9、自定义下划线以便阅读。 10、全文查找。 11、剪贴板查看。 12、预览文件。 13、时间显示和定时提醒。 14、支持MPA、MP1、MP2、MP3音乐(需要TaleMP3.dat支持)。 15、支持ZIP格式的文件(需要TaleZIP.dat支持)。 16、可以选择性的清除历史文件,并且可以制作自己的书库。-Function 1, running on Windows9x, WindowsNT system, without having to install, can run. 2, max 2MB file can be opened up to save the 50 most recently opened files. 3, supports TXT, HTML, RTF, GB, ZIP and other file formats. 4, the book minimized to the icon stored in the task bar in the form of "pallets" in the. 5, can be BIG5 => GB, GB => BIG5-way conversion, as well as GB, BIG5 code automatic identification. No other code conversion tool. 6, can be edited. 7, Smart sub. 8, line spacing, double and full screen display. 9, custom underlined in order to read. 10, full-text search. 11, clipboard view. 12, preview files. 13, time display, and timed reminders. 14, support the MPA, MP1, MP2, MP3 music (requires TaleMP3.dat support). 15, support the ZIP file format (requires TaleZIP.dat support). 16, you can selectively clear the history file and can create their own stacks.
Platform: | Size: 962560 | Author: | Hits:

[Delphi VCLTRichView.v.16.10.0.x86-x64.Src

Description: TRichView.v.16.10.0.x86-x64.Src.rar 支持最新的delphi 10.2 亲测可用,包含32位,64位源码(TRichView.v.16.10.0.x86-x64.Src.rar Support the latest Delphi 10.2 32 - bit, 64 - bit source code)
Platform: | Size: 55810048 | Author: 宋浩 | Hits:
« 12 3 4 5 6 7 8 9 10 »

CodeBus www.codebus.net